home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FishMarket 1.0
/
FishMarket v1.0.iso
/
fishies
/
126-150
/
disk_147
/
sys
/
default
/
varargs.h
< prev
Wrap
Text File
|
1992-05-06
|
931b
|
25 lines
/* varargs.h for MicroGnuEmacs 2a. This one will work on systems that */
/* the non-varargs version of mg 1 did. */
/* based on the one I wrote for os9/68k . I did not look at the bsd code. */
/* by Robert A. Larson */
/* assumptions made about how arguments are passed: */
/* arguments are stored in a block of memory with no padding between. */
/* The first argument will have the lowest address */
/* varargs is a "portable" way to write a routine that takes a variable */
/* number of arguements. This implemination agrees with both the 4.2bsd*/
/* and Sys V documentation of varargs. Note that just because varargs.h*/
/* is used does not mean that it is used properly. */
#define va_dcl unsigned va_alist;
typedef char *va_list;
#define va_start(pvar) ((pvar) = (char *)&va_alist)
#define va_arg(pvar,type) (((pvar)+=sizeof(type)),*(((type *)(pvar)) - 1))
#define va_end(pvar) /* va_end is simple */